package com.seu.me.test.end.bill;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import java.util.List;

/**
 * @author liangfeihu
 * @since 2019/10/30 16:30
 */
@Data
@ToString
@NoArgsConstructor
@XmlAccessorType(XmlAccessType.FIELD)
public class BillInfo {
    private String FeeType;
    private String BillNo;
    private String HospitalCode;
    private String HospitalName;
    private String HospStartDate;
    private String HospEndDate;
    private String BillMoney;

    public BillInfo(String feeType, String billNo, String hospitalCode, String hospitalName, String hospStartDate, String hospEndDate, String billMoney) {
        FeeType = feeType;
        BillNo = billNo;
        HospitalCode = hospitalCode;
        HospitalName = hospitalName;
        HospStartDate = hospStartDate;
        HospEndDate = hospEndDate;
        BillMoney = billMoney;
    }

    @XmlElement(name = "MedicalFeeInfoList")
    private MedicalFeeInfoData medicalFeeInfoData;

    @XmlElement(name = "DiagnoseTypeInfoList")
    private DiagnoseTypeInfoData diagnoseTypeInfoData;

    @Data
    @ToString
    @NoArgsConstructor
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class MedicalFeeInfoData {
        @XmlElements(value = {@XmlElement(name = "MedicalFeeInfo", type = MedicalFeeInfo.class)})
        private List<MedicalFeeInfo> medicalFeeInfoList;
    }

    @Data
    @ToString
    @NoArgsConstructor
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class DiagnoseTypeInfoData {
        @XmlElements(value = {@XmlElement(name = "DiagnoseTypeInfo", type = DiagnoseTypeInfo.class)})
        private List<DiagnoseTypeInfo> diagnoseTypeInfoList;
    }

}
